package com.hk.utils;

import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;

public class HttpUtil {


    public static void main(String[] args) throws Exception {

        String key = "67baae41ed6be80a0f6a78bca8814152";
        String uuid = "342342444";
        String sign = HMACSHA256(uuid, key);
        System.out.println(sign);



    }

    /**
     * 生成 HMACSHA256
     * @param data 待处理数据
     * @param key 密钥
     * @return 加密结果
     * @throws Exception
     */
    public static String HMACSHA256(String data, String key) throws Exception {
        Mac sha256_HMAC = Mac.getInstance("HmacSHA256");
        SecretKeySpec secret_key = new SecretKeySpec(key.getBytes("UTF-8"), "HmacSHA256");
        sha256_HMAC.init(secret_key);
        byte[] array = sha256_HMAC.doFinal(data.getBytes("UTF-8"));
        StringBuilder sb = new StringBuilder();
        for (byte item : array) {
            sb.append(Integer.toHexString((item & 0xFF) | 0x100).substring(1, 3));
        }
        return sb.toString().toUpperCase();
    }




}
